package com.uzai.console.service.alipaydetail;


import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.uzai.console.dto.alipaydetail.AlipayDetailAlipayUrlDao;
import com.uzai.console.dto.alipaydetail.AlipayDetailCreateDto;
import com.uzai.console.dto.alipaydetail.AlipayDetailQuery;
import com.uzai.console.dto.alipaydetail.TransUniTransferDto;
import com.uzai.console.vo.alipaydetail.AlipayDetailCreateVo;
import com.uzai.console.vo.alipaydetail.AlipayDetailInfoVo;

import java.util.Map;

/**
 * @author liuqi
 * @date 2021年08月25日 20:17
 */
public interface AlipayDetailService {

    /**
     * 查询支付宝交易记录列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param alipayDetailQuery
     * @return null
     */
    Page<AlipayDetailInfoVo> findAlipayDetailList(AlipayDetailQuery alipayDetailQuery);

    /**
     * 查询支付宝支付页面信息
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param alipayDetailAlipayUrlDao
     * @return null
     */
    AlipayDetailCreateVo findAlipayUrl(AlipayDetailAlipayUrlDao alipayDetailAlipayUrlDao);

    /**
     * 支付宝生产二维码支付
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param alipayDetailCreateDto
     * @return null
     */
    String createAlipayDetail(AlipayDetailCreateDto alipayDetailCreateDto);

    /**
     * 支付宝单笔转账
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param transUniTransferDto
     * @return null
     */
    Boolean transUniTransfer(TransUniTransferDto transUniTransferDto);

    /**
     * 处理支付宝账单业务类型
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param paramsMap
     * @return null
     */
    void dealAlipayDetail(Map<String, String> paramsMap);

    /**
     * 在线查询支付宝支付结果
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param tradeno
     * @return null
     */
    void alipayTradeQuery(String tradeno);


}
